package com.jz.community.moduleshoppingguide.home.model;

import com.jz.community.basecomm.net.rxandroid.OnLoadListener;
import com.jz.community.moduleshoppingguide.home.bean.CategoriesGoodsBean;
import com.jz.community.moduleshoppingguide.home.bean.ChunnelCategoriesBean;
import com.jz.community.moduleshoppingguide.home.bean.ChunnelNewbornBean;
import com.jz.community.moduleshoppingguide.home.bean.ChunnelTypeBean;
import com.jz.community.moduleshoppingguide.home.bean.HomeFindBean;
import com.jz.community.moduleshoppingguide.home.bean.HomeRecommendBean;
import com.jz.community.moduleshoppingguide.home.bean.HotSaleAllBean;
import com.jz.community.moduleshoppingguide.home.bean.HotSaleShowBean;
import com.jz.community.moduleshoppingguide.home.bean.LimitGoodsBean;
import com.jz.community.moduleshoppingguide.home.bean.PreferentialBean;
import com.jz.community.moduleshoppingguide.home.bean.QueryCouponState;
import com.jz.community.moduleshoppingguide.home.bean.ShareBean;
import com.jz.community.moduleshoppingguide.nearshop.bean.GoodsInfo;

import java.util.List;

/**
 * Created by Tony.Fan on 2018/3/12 17:52
 */
public interface ShoppingGuideModel {


    void showCategorysGoodsInfoes(String filter, int page, int size, OnLoadListener<GoodsInfo> onLoadListener);

    void getChunnelCategories(String categoryId, String cityCode, OnLoadListener<List<ChunnelTypeBean>> onLoadListener);

    void getChunnelCategoriesHome(String cityCode, OnLoadListener<List<ChunnelCategoriesBean>> onLoadListener);

    //365商品
    void getChannelOutGoods(String id, String shopId, String sort, int page, int size, OnLoadListener<CategoriesGoodsBean> onLoadListener);

    void getChunnelHomePage(int page, int size, String cityCode, OnLoadListener<HomeFindBean> onLoadListener);

    void getHomeRecommend(int page, int size, OnLoadListener<HomeRecommendBean> onLoadListener);

    void getChunnelNewborn(int page, int size, OnLoadListener<ChunnelNewbornBean> onLoadListener);

    void couponReceiveIds(List<String> couponIds, OnLoadListener<List<QueryCouponState>> onLoadListener);

    void chunnelShowCategories(String showCategoryId, int page, int size, OnLoadListener<CategoriesGoodsBean> onLoadListener);

    void preferentialArea(int page, int size, String cityCode, String message, OnLoadListener<PreferentialBean> onLoadListener);

    void initGoodsData(String cityId, String startTime, String endTime, int page, int size, OnLoadListener<LimitGoodsBean> onLoadListener);

    void unreadCount(String type, OnLoadListener<Integer> onLoadListener);

    void chunnelHotSaleAll(int page, int size, String showCategoryId, String platformId, int message, OnLoadListener<HotSaleAllBean> onLoadListener);

    void chunnelHotSaleShow(int message, OnLoadListener<HotSaleShowBean> onLoadListener);

    void initShareGift(OnLoadListener<ShareBean> onLoadListener);
}
